﻿using System;
using System.Windows.Forms;

using Storm.TextEditor.Parser.Objects;

namespace Storm.TextEditor.Editor
{
	/// <summary>
	/// Holds information on RowMouse events.
	/// </summary>
	public class RowMouseEventArgs
		: EventArgs
	{
		#region Fields

		private int mouseX;
		private int mouseY;

		private Row row;
		private MouseButtons button;
		private RowArea area;

		#endregion

		#region Properties

		/// <summary>
		/// Gets or sets the mouse X.
		/// </summary>
		/// <value>The mouse X.</value>
		public int MouseX
		{
			get { return mouseX; }
			set { mouseX = value; }
		}

		/// <summary>
		/// Gets or sets the mouse Y.
		/// </summary>
		/// <value>The mouse Y.</value>
		public int MouseY
		{
			get { return mouseY; }
			set { mouseY = value; }
		}

		/// <summary>
		/// Gets or sets the row.
		/// </summary>
		/// <value>The row.</value>
		public Row Row
		{
			get { return row; }
			set { row = value; }
		}

		/// <summary>
		/// Gets or sets the button.
		/// </summary>
		/// <value>The button.</value>
		public MouseButtons Button
		{
			get { return button; }
			set { button = value; }
		}

		/// <summary>
		/// Gets or sets the area.
		/// </summary>
		/// <value>The area.</value>
		public RowArea Area
		{
			get { return area; }
			set { area = value; }
		}
        
		#endregion

		/// <summary>
		/// Initializes a new instance of the <see cref="RowMouseEventArgs"/> class.
		/// </summary>
		public RowMouseEventArgs()
		{
		}
	}
}
